Actionscript 3 :: High Performance Encryption In Adobe Air / Flash
Dec 1, 2009
When looking for encryption related classes/functions in action script / air / flash, I saw the as3crypto project. This one provides a v. nice set of options, but I am a bit concerned on what the numbers presented means when these are used to decrypt a local media file when its selected about to be played. I am looking for security vs. performance balance.
For video/music, it needs to decode at a fast enough pace so the player plays it smoothly - which is something that depends on the format used, but is in all cases less than the delay of having to wait to decode the whole file.
1.How to load image resources? And in which case we should use "[Embed]" to insertresources?2.which technology can improve the performance of the game flash game development ?
I am in the planning phase of a new multi-user client/server app using Flash via Flex and AIR. I am trying to decide which web platform/stack is the best suited for this? I have used RoR in the past, but as i understand, RoR is single-threaded, and is therefore not the ideal choice for handling potentially thousands of simultaneous requests. I have done some reading about Scala and Lift and that is an intriguing option, but i was wondering if there are other languages/frameworks out there that would work well for my project?
I'm running Flash CS4 on a laptop and find it gets sluggish. I find when I restart my computer, I can work at a good speed for a while, but eventually it becomes very laggy - why is this?
Can I dump the cache files or something to simulate the restart? I've reduced the undo history to 10 - any other tips for CS4 on a mediocre machine?
We are using Adobe Flash to produce software for an interactive touch screen kiosk.I have 55 1024x768 24 bit PNG images.I want to play them (fairly regularly...once every 5 minutes or so) without them stuttering but can't find a good dependable way, main problem is I think Flash GC's them after an arbitrary idle period.Reason I'm doing this is because the FLV attempts we have made aren't sufficiently high quality.I also looked at using a H.264 but that obscures any other assets placed over it.I have a number of text fields sitting over this animation. The machine in question is a Core2 Duo, 4GB Ram, GeForce 9500GT.
I'm currently working on an Adobe AIR application which is targeting the iPad2 as the hardware platform, and can not get decent scrolling performance on one of the screens. I'm using a spark list, with a custom item renderer like so:
As you can see this is pretty light-weight, yet my dataprovider contains upwards of 100 items, and 11 of them can be on screen at any one time. Everything I've read around increasing performance for scrolling revolves around using opaqueBackground and cacheAsBitmap, however no matter what I try neither help here. Using cacheAsBitmap at the list level doesn't help as the item renderer recycling kicks in once you've scrolled more than a couple of lines requiring the whole thing to be re-rendered, and using it at the item renderer level is still horribly slow when scrolling fast — presumably because many are being recycled at once during a very fast scroll.
I know the iPad should have no problem blitting a screenful of information in a frame at 60 fps, yet when I scroll quickly I'm seeing it struggle to make 10 fps (from sight). So the question: have I missed something obvious, or is this to be expected due to the number of layers (and vector rendering) involved when using AIR? For the record, I have tried changing the render mode for the application and tried changing the frame rate to eliminate the obvious.
For some reason I am unable to create a FLV file from a MP4 file with high bitrate. I even created a custom setting and specified bitrate as 2500 but the output file is always around 775.
I am creating a TCP connect with Flash to a C# daemon. Now I have come to the part of encryption... I know that Flash is decompilable and so not safe to store private keys on. I need 2 way encryption because of the messages that have to be send back to the Flash client. I have been thinking and googling, but cannot find a proper solution yet.
I would like to protect my published SWFs against decryption.I've found some commercial tools performing what I need, but I think it's always wise to wait and think about it before spending money. Does anybody know valid (freeware) alternatives to do that? Do you currently protect your SWF? What may be my satisfaction level of protection (I am perfectly conscious that a perfect encrypter does not exist, but if decryption is difficoult, maybe a not-so-motivated hacker would give up)?
I've been doing a little bit of reading about Stage3D, which will be a new API used with Flash Player 11.Will this API improve the performance of 2D rendering (Vector) in any way, or will the library be used primarily for rendering 3D?
what's the recommended method to encrypt flash files? i'd like to make some flash programs that are commericals, how can i made sure that they won't get decrypted or to make sure that i used to strongest file encryption possible.
Does flash have any built in encryption / decryption tools?I would like to send text from a server to flash, and would like to encrypt it on the server then have flash decrypt it. How can I do this?
I'm devloping some library classes for flocking/steering behaviours on large numbers of objects (2000+). I'm finding that at < 500 instances, performance is reasonable. As the numbers increase, framerate bogs down.
I've seen remarkable performance with libraries such as Flint or Box2D with ridiculous #'s of particles / objects, so it should be possible to optimize / refactor my code to be a bit better.
I'm aware of the basic optimizations, such as bitwise operations and optimized for loops. Are there any more fundamental approaches I should be considering? For example, currently each instance is a vector-based MovieClip. Would working with BitmapData be more efficient?
Will I take a big hit in performance using nested ViewStacks? Should I strive to handle all navigation in one ViewStack and push children manually or will the affected performance be negligible?
We have a medium size Flex 3.6 application that contains around 20 different page views (managed via a single lazy ViewStack) each having multiple components. Most use custom renderers.All model data is loaded at startup and changes to model instances are communicated via binding and/or collection change events.Once the user has viewed each page at least once, all page views are instantiated and happily listen to update events.Which in effect means that each time a model instance changes, all interested views receive that event and compute derived data or trigger item-renderers.I have tested and confirmed this behaviour in a proof-of-concept application. Even when setting a list to being invisible, it still listens to collection change events and invalidates any renderer affected.What would you do?
Currently writing my own AMF TcpSocketServer. Everything works good so far i can send and recieve objects and i use some serialization/deserialization code. Now i started working on the encryption code and i am not so familiar with this stuff.I work with bytes , is DES-CBC a good way to encrypt this stuff? Or are there other more performant/secure ways to send my data? Note that performance is a must :). When i call: ReadAmf3Object with the decrypter specified i get an: InvalidOperationException thrown by my ReadAmf3Object function when i read out the first byte the Amf3TypeCode isn't specified ( they range from 0 to 16 i believe (Bool, String, Int, DateTime, etc) ).I got Typecodes varying from 97 to 254?I think it has something to do with the encryption part. Since the deserializer works fine w/o the encryption. I am using the right padding/mode/key?
I used: http:[url].... as as3 encryption/decryption library. And i wrote an Async tcp server with some abuse of the threadpool ;)Anyway here some code:
C# crypter initalization code System.Security.Cryptography.DESCryptoServiceProvider crypter = new DESCryptoServiceProvider();[code]........
I have a flash presentation thats for a supermarket TV screen. Its big in file size 9.6MB. When I go file/export/export movie to quicktime and use the animation settings the file plays but leaves trail lines behind, skips frames and looks crap.
The quicktime settings I've used are either: Animation Quality Best Millions of colours All Key frames 24fps or DV - PAL Frame rate 24fps Quality Best I need it to look high quality but I am not sure what settings to use.
So I recently switchs to a new computer. Installed flash and got everything up and running. On the old computer, I was forced to set the jvm.ini to use -Xmx512M in order to run the application (it's kinda big) But now, if I set it 512, flash will not open... I get the Java enviroment error.
Now, I lower the xmx value more and more and more until flash FINALLY opens without an error... I load up my application and when I try to run it, I get the java memory heap error and it tells me to adjust the jvm.ini file. Anyone know how I can get flash cs5.5 on a windows 7 64bit machine with 8 gigs of ram to open with a larger jvm.ini value?
In my machine I have installed only Adobe Flash CS5 proffesional trial version. Now this installation is not supporting adobe.utils.Extension class in this version. I have tried with all latest updates from adobe site. My doubt is does adobe.utils.Extension class is available in licensed version of Adobe Flash CS5 proffesional?
I want to create a simple game (Adobe Air) based on 2 players using ActionScript 3.Let's assume I want to create online chess game.So that I can play with my friend at work, at home, from anywhere via internet.Should I use flash server? Or something similar for this purpose, or there is simpler way to connect 2 players and make fully functional interaction between them?
Is there any way to create a direct data connection between two flash clients without the use of Cirrus?
I'm asking because I create a multiplayer iPhone game with flash which currently uses Cirrus for all online multiplayer data. now I read that, if your iPhone app uses encryption (which cirrus does) you need to go through a long encryption export approval process by the U.S government. I want to avoid this, so now i'm looking for another method to exchange data directly between clients without having to route all traffic through my server.
I'm trying to get a high quality video into a flash document. I would like it to stream the flv from the website it will be posted on.
The source file is a 640x480 quicktime file (H264 compression)however viewing it at 640x480, I notice that there is pixelation instead of a clean and crisp image, I look at the source, it's clean and crisp. how can I import a nice high quality video into flash without that nasty pixelation?
As more and more FLV videos are moving to HD, I'm noticing high CPU usage and lots of dropped frames when playing FLV video in web browser with Flash 10. This is true even if the video isn't full screen. I've tried a variety of browsers (Firefox, I.E., Chrome) and the problem occurs on all of them so it's pretty clear it's a limitation in Flash.
Now my PC isn't high end (it has a Pentium M 1.86 GHz processor), but I can take those same FLV files and load them in something like Media Player Classic or Windows Media Player (when using ffdshow) and play the FLV files full screen with little or no drop in frames and an acceptable CPU rate.
This is especially annoying on sites like YouTube where I actually have to save the video and play it back in something other than Flash to have it play back at an acceptable rate. This doesn't work for other sites like Amazon.
Why is the CPU usage so high when decoding and displaying videos when compared to other media players?
I have a simple flash based quiz game with simple score var and percentage var. I am wanting to a high score function to it as motivation to my kids by creating healthy competition with high scores. This is not a web based game. I found many PHP high score tutorials but wont work for me.
So I've been surfing the net trying to find a way to get a 100% resolution from Flash to Gif and can't find it.Here is the deal, I've got Adobe CS5 and I started doing animation in photoshop. It took forever but once I got it done it looked awesome and I could easily transfer it into a gif via 'save for web and devices".Because it was taking forever I decided to learn flash and after a day I got the basics pretty much figured out and made my first .swf file. I then went to turn it into a Gif and the resolution sucked and the timing was off.